package role.Impl;

import entity.Book;
import entity.Gift;
import role.Role;

/**
 * 角色实现类
 * 
 * @author yy
 *
 */
public class NormalRole extends Role {

	@Override
	public boolean bookIn(Book book, int inNum) {
		if (getMgr() == null) {
			System.out.println("不是管理员，不能进入入库操作");
			return false;
		}
		return getMgr().bookIn(book, inNum);
	}

	@Override
	public boolean bookOut(Book book, int outNum) {
		if (getMgr() == null) {
			System.out.println("不是管理员，不能进入出库操作");
			return false;
		}
		return getMgr().bookOut(book, outNum);
	}

	@Override
	public void showBook(Book[] books) {
		if(getMgr() == null){
			getCus().showBook(books);
		}else if(getCus() == null){
			getMgr().showBook(books);
		}
	}

	@Override
	public boolean addBook(Book[] books, Book book) {
		if (getMgr() == null) {
			System.out.println("不是管理员，不能进入出库操作");
			return false;
		}
		return getMgr().addBook(books, book);
	}

	@Override
	public void checkBook(Book book) {
		if (getCus() == null) {
			System.out.println("不是顾客，不能结算图书");
			return;
		}
		getCus().checkBook(book);
	}

	@Override
	public Book buyBook(Book book, int buyNum) {
		if (getCus() == null) {
			System.out.println("不是顾客，不能购买图书");
			return null;
		}
		return getCus().buyBook(book, buyNum);
	}

	@Override
	public Gift buyGift(int giftId) {
		if (getCus() == null) {
			System.out.println("不是顾客，不能购买赠品");
			return null;
		}
		return getCus().buyGift(giftId);
	}

}
